package com.isoft.airportsystem.service.change;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.isoft.airportsystem.common.change.Result;
import com.isoft.airportsystem.entity.change.FlightChangeHistory;
import com.isoft.airportsystem.entity.change.FlightChangeRequest;
import com.isoft.airportsystem.entity.dao.FlightChangeRequestDTO;
import com.isoft.airportsystem.entity.dao.PageQuery;

public interface FlightChangeService {
    /**
     * 提交变更申请
     */
    Result<FlightChangeRequest> submitChangeRequest(FlightChangeRequestDTO dto);

    /**
     * 审核变更申请
     */
    Result<FlightChangeRequest> reviewChangeRequest(String requestId, String status, String comment, String reviewerId);

    /**
     * 获取变更申请列表
     */
    Page<FlightChangeRequest> getChangeRequests(PageQuery query, String flightId, String status);

    /**
     * 获取变更历史记录
     */
    Page<FlightChangeHistory> getChangeHistory(PageQuery query, String flightId, String userId);
}